查看原文
其他

Python 从Zero到Hero(一)

21CTO学院 21CTO 2020-11-17

21CTO社区导读:


各位同学,Python是什么? 是一条蛇?如果是,它也是一条可爱的聪明的小蛇。

 

它和Java,PHP,Perl等一样,是一门计算机语言。

 

它的发明者是Guido van Rossum,他是这样描述Python的:

 

Python是一门高级编程语言。它的核心理念是关注代码和语法和可读性,它允许程序员用少量代码表达编程概念。

 

对我来说,学Python的第一理由是,它是一个好看的编程语言,写代码就像写文章一样自然表达。

 

还有一个原因是,我们可以用Python很好的完成工作,比如数据挖掘、Web开发和机器学习等领域都能做得很棒。 Quora,Google,Pinterest和Spotify都在用Python进行后端Web开发。国内如Douban,Toutiao等公司也是使用Python做后端应用开发。

 

有一句话:“人生苦短,我用Python”。用了Python,上下楼不费劲儿,对得起咱这张脸,我们一起来了解它。

 

Python基础

 

1 变量


您可以将变量看作是一个存储值的单词——就是这么简单。

在Python中,定义一个变量并给它赋一个值是很容易的。我们想象一下,把数字1存储到一个名叫one的变量中。

 

我们这样来做,来看如下代码:

 

one = 1


是不是很简单?我们这样就将值1分配给了变量one。

 

two = 2

some_number = 10000

 

你也可以给其它任何变量赋值。比如上面的,变量“two”存储了整数2,“some_number”存储了整数10000.

 

除了保存整数外,我们还可以使用布尔值(true/false),字符串,浮点数等多种数据类型。

 

#布尔值

true_boolean = True

false_boolean = False

 

#字符串

my_name = “Raymond”

 

#浮点型

book_price = 15.80

 

2 控制流程:条件处理


使用if 语句来评估表达式是True还是False。如果它是True,它会执行if语句体里的内容。如下代码:

if True:

 print(“Hello Python If”)

if 2 >1

 print(“2 if greater than 1”)

 

因为2大于1,所以执行了print代码。

如果if 的表达式为false,则会执行else语句。

 

if 1>2:

  print(“1is greater than2”)

else:

 print(“1 is not greater than 2”)

 

1不会大于2,所以else语句中的代码将被执行之。

 

你也可以使用 elif 语句:

 

if 1 > 2:

 print("1 is greater than 2")

elif 2 > 1:

 print("1 is not greater than 2")

else:

 print("1 is equal to 2")

 

3 循环/迭代器


在Python中,我们可以用几种不同形式进行迭代循环。我们将介绍两个while和for。

 

While循环:当条件为True时,语句体内的代码将被执行。所以,此代码将打印出数字1到10。

 

num = 1

while num <= 10:

   print(num)

   num+= 1

 

while需要一个“循环条件”。如果条件保持为True,它将继续迭代。在这个代码例子中,当num 是11,循环条件等于 False。

 

我们来看一个基础代码,可以更好的理解它:

 

loop_condition = True

while loop_condition:

  print(“Loop Condition keeps: %s”%(loop_condition))

  loop_condition = False

 

循环条件是True,所以它保持迭代,直到我们将它设置为False。

 

对于循环:把变量“num”应用于语句块,“for”语句将继续迭代。此代码将继续打印与前面代码类似的结果:1到10。

 

for i in range(1, 11):

 print(i)

 

我们看到,很简单的代码。功能是范围从1开始,到第11个数字,打印完成。

 

 4 列表:集合 | 数组 | 数据结构

 

我们一起考虑一下,我们想把整数1存储在一个变量中,但是我们想存储2,3,4,5…这些数值想都放在一个变量里怎么办?

 

我们当然可以用另一种方法来存储想要的整数,但是不能是数以百万计的变量。 你猜对了,有另一种方法来存储它们。

 

列表List就是一个用来保存一组数据的集合,像我们想要的这些整数一样。我们这样使用它:

 

my_integers = [1, 2, 3, 4, 5]

 

是不是很简单。我们一起创建了一组数据并把它存储在my_integer数组上。

我们该怎样从数组中获取值呢? 挺好的问题。 List有一个叫做索引的概念。第1个元素的索引值为0,第2个为1,依此类推,相信你明白了。

 

为了更清晰,我们可以用索引 来表示数组和每个元素。我把它画出图来:

 

 

使用Python的语法,也挺好理解:

 

my_integers = [5, 7, 1, 3, 4]

print(my_integers[0]) # 5

print(my_integers[1]) # 7

print(my_integers[4]) # 4

 

我们也许不想只存储整数,也许只想存储字符串,就象亲友的名字列表一样。

 

relatives_names = [

 "Toshiaki",

 "Juliana",

 "Yuji",

 "Bruno",

 "Kaio"

]

 

print(relatives_names[4]) # Kaio

 

它的工作方式与整数相同。

我们刚刚学习了List索引如何工作。下面向大家介绍如何将元素添加到List数据结构中(一个元素添加到列表)。

 

在Python中,将一个新值添加到List的常见方法是append。我们一起来看它是如何工作的:

 

bookshelf = []

bookshelf.append("The EffectiveEngineer")

bookshelf.append("The 4 Hour WorkWeek")

print(bookshelf[0]) # The EffectiveEngineer

print(bookshelf[1]) # The 4 Hour Work Week

 

append语句简直是超级简单。你只要将元素(如“有效率的工程师”)做为append参数。

 

到此为止,我们对Lists列表的理解已经够了。接下来我们谈下一个数据结构。

 

5 字典 Dictionary:键-值数据结构

 

现在,我们知道列表Lists是使用整数索引的。但是有时候我们不想用整数作为索引呢?当然,Python提供了一个数据结构,可以让索引是数字、字符串或其它 数据类型。

 

让我们来了解一下Dictionary字典数据结构。Dictionary是键值对的集合。下面是它的样子:

 

dictionary_example = {

 "key1": "value1",

 "key2": "value2",

 "key3": "value3"

}

 

键名指向索引的值。我们怎么访问Dictionary中的值?你猜对了,我们用Key,我们来试试看:

 

dictionary_ex = {

 "name": "Raymond",

 "nickname": "Luoyi",

 "nationality": "China"

}

 

print("My name is %s"%(dictionary_ex["name"])) # My name is Raymond

print("But you can call me %s"%(dictionary_ex["nickname"])) # But you can call me Luoyi

print("And by the way I'm %s"%(dictionary_ex["nationality"])) # And by the way I'm China

 

我创建了一个关于我自己的Dictionary,包括我的名字,昵称和国籍,都以键名的方式保存在Dictionary字典中。

 

我们已经一起学习了使用索引来访问List,我们也使用索引(Dictionary上下文的键)来访问保存在Dictionary的值。

 

在这个例子中,我引用了Dictionary存储的值打印一个关于我的短语。很简单对吧?

 

Dictionary另一个很酷的事是,我们可以使用任何东西做为值。创建了Dictionary,我们想添加一个key为“age”和我真正年龄的整数值:

 

dictionary_ex = {

 "name": "Raymond",

 "nickname": "Luoyi",

 "nationality": "China",

 "age": 38

}

 

print("My name is %s"%(dictionary_ex["name"])) # My name is Raymond

print("But you can call me %s"%(dictionary_ex["nickname"])) # But you can call me Luoyi

print("And by the way I'm %i and%s" %(dictionary_ex["age"], dictionary_tk["nationality"]))# And by the way I'm China

 

这里,我们有一个键(key)和值(24),做为字符串的键和整数作为值。

 

和我们对Lists所做的一样,我们学习如何将元素添加到Dictionary。Key指向一个值是Dictionary的重要组成部分。当我们添加元素时,也是如此:

 

dictionary_ex = {

  "name": "Raymond",

  "nickname": "Luoyi",

  "nationality": "China"

}


dictionary_ex['age'] = 24  #add new item


print(dictionary_ex) # {'nationality': 'China', 'age': 38, 'nickname': 'Luoyi', 'name': 'Raymond'}

 

我们只需给一个Dictionary分配一个key和值。没有什么复杂的,对吧?



作者:21CTO社区

说明:本站原创作品。Python开发系列文章,敬请期待。


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存